<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head>
<title>ejb/ejb20/basic/statelessSession/Client.java</title>
  <style type="text/css">
    <!--code { font-family: Courier New, Courier; font-size: 10pt; margin: 0px; }-->
  </style>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head><body>


<!-- ======================================================== -->
<!-- = Java Sourcecode to HTML automatically converted code = -->
<!-- =   Java2Html Converter 4.2 [2005-06-04] by Markus Gebhard  markus@jave.de   = -->
<!-- =     Further information: http://www.java2html.de     = -->
<div align="left" class="java">
<table border="0" cellpadding="3" cellspacing="0" bgcolor="#ffffff">
  <!-- start headline -->
   <tr>
    <td colspan="2">
     <center><font size="+2">
      <code><b>
Client.java
      </b></code>
     </font></center>
    </td>
   </tr>
  <!-- end headline -->
   <tr>
  <!-- start source code -->
   <td nowrap="nowrap" valign="top" align="left">
    <code>
<a name="1"><font color="#808080">001</font>&nbsp;</a><font color="#7f0055"><b>package&nbsp;</b></font><font color="#000000">examples.ejb.ejb20.basic.statelessSession;</font><br />
<a name="2"><font color="#808080">002</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="3"><font color="#808080">003</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">java.rmi.RemoteException;</font><br />
<a name="4"><font color="#808080">004</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">java.util.Hashtable;</font><br />
<a name="5"><font color="#808080">005</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">javax.ejb.CreateException;</font><br />
<a name="6"><font color="#808080">006</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">javax.ejb.RemoveException;</font><br />
<a name="7"><font color="#808080">007</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">javax.naming.Context;</font><br />
<a name="8"><font color="#808080">008</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">javax.naming.InitialContext;</font><br />
<a name="9"><font color="#808080">009</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">javax.naming.NamingException;</font><br />
<a name="10"><font color="#808080">010</font>&nbsp;</a><font color="#7f0055"><b>import&nbsp;</b></font><font color="#000000">javax.rmi.PortableRemoteObject;</font><br />
<a name="11"><font color="#808080">011</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="12"><font color="#808080">012</font>&nbsp;</a><font color="#3f5fbf">/**</font><br />
<a name="13"><font color="#808080">013</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;This&nbsp;class&nbsp;illustrates&nbsp;calling&nbsp;a&nbsp;stateless&nbsp;Session&nbsp;Bean&nbsp;and&nbsp;performing</font><br />
<a name="14"><font color="#808080">014</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;the&nbsp;following&nbsp;exercises:</font><br />
<a name="15"><font color="#808080">015</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;ul&gt;</font><br />
<a name="16"><font color="#808080">016</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;li&gt;&nbsp;</font><font color="#3f5fbf">Create&nbsp;a&nbsp;Trader</font><br />
<a name="17"><font color="#808080">017</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;li&gt;&nbsp;</font><font color="#3f5fbf">Buy&nbsp;some&nbsp;shares&nbsp;using&nbsp;the&nbsp;Trader</font><br />
<a name="18"><font color="#808080">018</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;li&gt;&nbsp;</font><font color="#3f5fbf">Sell&nbsp;some&nbsp;shares&nbsp;using&nbsp;the&nbsp;Trader</font><br />
<a name="19"><font color="#808080">019</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;li&gt;&nbsp;</font><font color="#3f5fbf">Remove&nbsp;the&nbsp;Trader</font><br />
<a name="20"><font color="#808080">020</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;/ul&gt;</font><br />
<a name="21"><font color="#808080">021</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*</font><br />
<a name="22"><font color="#808080">022</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f9fbf">@author&nbsp;</font><font color="#3f5fbf">Copyright&nbsp;(c)&nbsp;1998-2008&nbsp;by&nbsp;BEA&nbsp;Systems,&nbsp;Inc.&nbsp;All&nbsp;Rights&nbsp;Reserved.</font><br />
<a name="23"><font color="#808080">023</font>&nbsp;</a><font color="#ffffff">&nbsp;</font><font color="#3f5fbf">*/</font><br />
<a name="24"><font color="#808080">024</font>&nbsp;</a><font color="#7f0055"><b>public&nbsp;class&nbsp;</b></font><font color="#000000">Client</font><br />
<a name="25"><font color="#808080">025</font>&nbsp;</a><font color="#000000">{</font><br />
<a name="26"><font color="#808080">026</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;static&nbsp;final&nbsp;</b></font><font color="#000000">String&nbsp;JNDI_NAME&nbsp;=&nbsp;</font><font color="#2a00ff">&#34;ejb20-statelessSession-TraderHome&#34;</font><font color="#000000">;</font><br />
<a name="27"><font color="#808080">027</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;</b></font><font color="#000000">String&nbsp;url;</font><br />
<a name="28"><font color="#808080">028</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;</b></font><font color="#000000">TraderHome&nbsp;home;</font><br />
<a name="29"><font color="#808080">029</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="30"><font color="#808080">030</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>public&nbsp;</b></font><font color="#000000">Client</font><font color="#000000">(</font><font color="#000000">String&nbsp;url</font><font color="#000000">)&nbsp;</font><font color="#7f0055"><b>throws&nbsp;</b></font><font color="#000000">NamingException&nbsp;</font><font color="#000000">{</font><br />
<a name="31"><font color="#808080">031</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>this</b></font><font color="#000000">.url&nbsp;=&nbsp;url;</font><br />
<a name="32"><font color="#808080">032</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">home&nbsp;=&nbsp;lookupHome</font><font color="#000000">()</font><font color="#000000">;</font><br />
<a name="33"><font color="#808080">033</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="34"><font color="#808080">034</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="35"><font color="#808080">035</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#3f5fbf">/**</font><br />
<a name="36"><font color="#808080">036</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;Runs&nbsp;this&nbsp;example&nbsp;from&nbsp;the&nbsp;command&nbsp;line.&nbsp;Example:</font><br />
<a name="37"><font color="#808080">037</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;p&gt;</font><br />
<a name="38"><font color="#808080">038</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;tt&gt;</font><font color="#3f5fbf">java&nbsp;examples.ejb.ejb20.basic.statelessSession.Client&nbsp;&#34;t3://localhost:7001&#34;</font><font color="#7f7f9f">&lt;/tt&gt;</font><br />
<a name="39"><font color="#808080">039</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;p&gt;</font><br />
<a name="40"><font color="#808080">040</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;The&nbsp;parameters&nbsp;are&nbsp;optional,&nbsp;but&nbsp;if&nbsp;any&nbsp;are&nbsp;supplied,</font><br />
<a name="41"><font color="#808080">041</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;they&nbsp;are&nbsp;interpreted&nbsp;in&nbsp;this&nbsp;order:</font><br />
<a name="42"><font color="#808080">042</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f7f9f">&lt;p&gt;</font><br />
<a name="43"><font color="#808080">043</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;</font><font color="#7f9fbf">@param&nbsp;</font><font color="#3f5fbf">args&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;URL&nbsp;such&nbsp;as&nbsp;&#34;t3://localhost:7001&#34;&nbsp;of&nbsp;Server</font><br />
<a name="44"><font color="#808080">044</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*/</font><br />
<a name="45"><font color="#808080">045</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>public&nbsp;static&nbsp;</b></font><font color="#7f0055"><b>void&nbsp;</b></font><font color="#000000">main</font><font color="#000000">(</font><font color="#000000">String</font><font color="#000000">[]&nbsp;</font><font color="#000000">args</font><font color="#000000">)&nbsp;</font><font color="#7f0055"><b>throws&nbsp;</b></font><font color="#000000">Exception&nbsp;</font><font color="#000000">{</font><br />
<a name="46"><font color="#808080">046</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;\nBeginning&nbsp;statelessSession.Client...\n&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="47"><font color="#808080">047</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">String&nbsp;url&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;</font><font color="#2a00ff">&#34;t3://localhost:7001&#34;</font><font color="#000000">;</font><br />
<a name="48"><font color="#808080">048</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Client&nbsp;client&nbsp;=&nbsp;</font><font color="#7f0055"><b>null</b></font><font color="#000000">;</font><br />
<a name="49"><font color="#808080">049</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="50"><font color="#808080">050</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;Parse&nbsp;the&nbsp;argument&nbsp;list</font><br />
<a name="51"><font color="#808080">051</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>if&nbsp;</b></font><font color="#000000">(</font><font color="#000000">args.length&nbsp;&gt;&nbsp;</font><font color="#990000">1</font><font color="#000000">)&nbsp;{</font><br />
<a name="52"><font color="#808080">052</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Usage:&nbsp;java&nbsp;examples.ejb.ejb20.basic.statelessSession.Client&nbsp;t3://hostname:port&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="53"><font color="#808080">053</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>return</b></font><font color="#000000">;</font><br />
<a name="54"><font color="#808080">054</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#7f0055"><b>else&nbsp;if&nbsp;</b></font><font color="#000000">(</font><font color="#000000">args.length&nbsp;==&nbsp;</font><font color="#990000">1</font><font color="#000000">)&nbsp;{</font><br />
<a name="55"><font color="#808080">055</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">url&nbsp;=&nbsp;args</font><font color="#000000">[</font><font color="#990000">0</font><font color="#000000">]</font><font color="#000000">;</font><br />
<a name="56"><font color="#808080">056</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="57"><font color="#808080">057</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="58"><font color="#808080">058</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>try&nbsp;</b></font><font color="#000000">{</font><br />
<a name="59"><font color="#808080">059</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">client&nbsp;=&nbsp;</font><font color="#7f0055"><b>new&nbsp;</b></font><font color="#000000">Client</font><font color="#000000">(</font><font color="#000000">url</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="60"><font color="#808080">060</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">client.example</font><font color="#000000">()</font><font color="#000000">;</font><br />
<a name="61"><font color="#808080">061</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#7f0055"><b>catch&nbsp;</b></font><font color="#000000">(</font><font color="#000000">NamingException&nbsp;ne</font><font color="#000000">)&nbsp;{</font><br />
<a name="62"><font color="#808080">062</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Unable&nbsp;to&nbsp;look&nbsp;up&nbsp;the&nbsp;beans&nbsp;home:&nbsp;&#34;&nbsp;</font><font color="#000000">+&nbsp;ne.getMessage</font><font color="#000000">())</font><font color="#000000">;</font><br />
<a name="63"><font color="#808080">063</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>throw&nbsp;</b></font><font color="#000000">ne;</font><br />
<a name="64"><font color="#808080">064</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#7f0055"><b>catch&nbsp;</b></font><font color="#000000">(</font><font color="#000000">Exception&nbsp;e</font><font color="#000000">)&nbsp;{</font><br />
<a name="65"><font color="#808080">065</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;There&nbsp;was&nbsp;an&nbsp;exception&nbsp;while&nbsp;creating&nbsp;and&nbsp;using&nbsp;the&nbsp;Trader.&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="66"><font color="#808080">066</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;This&nbsp;indicates&nbsp;that&nbsp;there&nbsp;was&nbsp;a&nbsp;problem&nbsp;communicating&nbsp;with&nbsp;the&nbsp;server:&nbsp;&#34;</font><font color="#000000">+e</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="67"><font color="#808080">067</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>throw&nbsp;</b></font><font color="#000000">e;</font><br />
<a name="68"><font color="#808080">068</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="69"><font color="#808080">069</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="70"><font color="#808080">070</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;\nEnd&nbsp;statelessSession.Client...\n&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="71"><font color="#808080">071</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="72"><font color="#808080">072</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="73"><font color="#808080">073</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#3f5fbf">/**</font><br />
<a name="74"><font color="#808080">074</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;Runs&nbsp;this&nbsp;example.</font><br />
<a name="75"><font color="#808080">075</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*/</font><br />
<a name="76"><font color="#808080">076</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>public&nbsp;</b></font><font color="#7f0055"><b>void&nbsp;</b></font><font color="#000000">example</font><font color="#000000">()</font><br />
<a name="77"><font color="#808080">077</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>throws&nbsp;</b></font><font color="#000000">CreateException,&nbsp;RemoteException,&nbsp;RemoveException</font><br />
<a name="78"><font color="#808080">078</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">{</font><br />
<a name="79"><font color="#808080">079</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;create&nbsp;a&nbsp;Trader</font><br />
<a name="80"><font color="#808080">080</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Creating&nbsp;a&nbsp;trader&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="81"><font color="#808080">081</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Trader&nbsp;trader&nbsp;=&nbsp;</font><font color="#000000">(</font><font color="#000000">Trader</font><font color="#000000">)&nbsp;</font><font color="#000000">narrow</font><font color="#000000">(</font><font color="#000000">home.create</font><font color="#000000">()</font><font color="#000000">,&nbsp;Trader.</font><font color="#7f0055"><b>class</b></font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="82"><font color="#808080">082</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="83"><font color="#808080">083</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">String&nbsp;</font><font color="#000000">[]&nbsp;</font><font color="#000000">stocks&nbsp;=&nbsp;</font><font color="#000000">{</font><font color="#2a00ff">&#34;BEAS&#34;</font><font color="#000000">,&nbsp;</font><font color="#2a00ff">&#34;MSFT&#34;</font><font color="#000000">,&nbsp;</font><font color="#2a00ff">&#34;AMZN&#34;</font><font color="#000000">,&nbsp;</font><font color="#2a00ff">&#34;HWP&#34;&nbsp;</font><font color="#000000">}</font><font color="#000000">;</font><br />
<a name="84"><font color="#808080">084</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="85"><font color="#808080">085</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;execute&nbsp;some&nbsp;buys</font><br />
<a name="86"><font color="#808080">086</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>for&nbsp;</b></font><font color="#000000">(</font><font color="#7f0055"><b>int&nbsp;</b></font><font color="#000000">i=</font><font color="#990000">0</font><font color="#000000">;&nbsp;i&lt;stocks.length;&nbsp;i++</font><font color="#000000">)&nbsp;{</font><br />
<a name="87"><font color="#808080">087</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>int&nbsp;</b></font><font color="#000000">shares&nbsp;=&nbsp;</font><font color="#000000">(</font><font color="#000000">i+</font><font color="#990000">1</font><font color="#000000">)&nbsp;</font><font color="#000000">*&nbsp;</font><font color="#990000">100</font><font color="#000000">;</font><br />
<a name="88"><font color="#808080">088</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Buying&nbsp;&#34;</font><font color="#000000">+shares+</font><font color="#2a00ff">&#34;&nbsp;shares&nbsp;of&nbsp;&#34;</font><font color="#000000">+stocks</font><font color="#000000">[</font><font color="#000000">i</font><font color="#000000">]</font><font color="#000000">+</font><font color="#2a00ff">&#34;.&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="89"><font color="#808080">089</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">trader.buy</font><font color="#000000">(</font><font color="#000000">stocks</font><font color="#000000">[</font><font color="#000000">i</font><font color="#000000">]</font><font color="#000000">,&nbsp;shares</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="90"><font color="#808080">090</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="91"><font color="#808080">091</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="92"><font color="#808080">092</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;execute&nbsp;some&nbsp;sells</font><br />
<a name="93"><font color="#808080">093</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>for&nbsp;</b></font><font color="#000000">(</font><font color="#7f0055"><b>int&nbsp;</b></font><font color="#000000">i=</font><font color="#990000">0</font><font color="#000000">;&nbsp;i&lt;stocks.length;&nbsp;i++</font><font color="#000000">)&nbsp;{</font><br />
<a name="94"><font color="#808080">094</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>int&nbsp;</b></font><font color="#000000">shares&nbsp;=&nbsp;</font><font color="#000000">(</font><font color="#000000">i+</font><font color="#990000">1</font><font color="#000000">)&nbsp;</font><font color="#000000">*&nbsp;</font><font color="#990000">100</font><font color="#000000">;</font><br />
<a name="95"><font color="#808080">095</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Selling&nbsp;&#34;</font><font color="#000000">+shares+</font><font color="#2a00ff">&#34;&nbsp;shares&nbsp;of&nbsp;&#34;</font><font color="#000000">+stocks</font><font color="#000000">[</font><font color="#000000">i</font><font color="#000000">]</font><font color="#000000">+</font><font color="#2a00ff">&#34;.&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="96"><font color="#808080">096</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">trader.sell</font><font color="#000000">(</font><font color="#000000">stocks</font><font color="#000000">[</font><font color="#000000">i</font><font color="#000000">]</font><font color="#000000">,&nbsp;shares</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="97"><font color="#808080">097</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="98"><font color="#808080">098</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="99"><font color="#808080">099</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;remove&nbsp;the&nbsp;Trader</font><br />
<a name="100"><font color="#808080">100</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Removing&nbsp;the&nbsp;trader&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="101"><font color="#808080">101</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">trader.remove</font><font color="#000000">()</font><font color="#000000">;</font><br />
<a name="102"><font color="#808080">102</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="103"><font color="#808080">103</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="104"><font color="#808080">104</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#3f5fbf">/**</font><br />
<a name="105"><font color="#808080">105</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;RMI/IIOP&nbsp;clients&nbsp;should&nbsp;use&nbsp;this&nbsp;narrow&nbsp;function</font><br />
<a name="106"><font color="#808080">106</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*/</font><br />
<a name="107"><font color="#808080">107</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;</b></font><font color="#000000">Object&nbsp;narrow</font><font color="#000000">(</font><font color="#000000">Object&nbsp;ref,&nbsp;Class&nbsp;c</font><font color="#000000">)&nbsp;{</font><br />
<a name="108"><font color="#808080">108</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>return&nbsp;</b></font><font color="#000000">PortableRemoteObject.narrow</font><font color="#000000">(</font><font color="#000000">ref,&nbsp;c</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="109"><font color="#808080">109</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="110"><font color="#808080">110</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="111"><font color="#808080">111</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#3f5fbf">/**</font><br />
<a name="112"><font color="#808080">112</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;Lookup&nbsp;the&nbsp;EJBs&nbsp;home&nbsp;in&nbsp;the&nbsp;JNDI&nbsp;tree</font><br />
<a name="113"><font color="#808080">113</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*/</font><br />
<a name="114"><font color="#808080">114</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;</b></font><font color="#000000">TraderHome&nbsp;lookupHome</font><font color="#000000">()&nbsp;</font><font color="#7f0055"><b>throws&nbsp;</b></font><font color="#000000">NamingException&nbsp;</font><font color="#000000">{</font><br />
<a name="115"><font color="#808080">115</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;Lookup&nbsp;the&nbsp;beans&nbsp;home&nbsp;using&nbsp;JNDI</font><br />
<a name="116"><font color="#808080">116</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Context&nbsp;ctx&nbsp;=&nbsp;getInitialContext</font><font color="#000000">()</font><font color="#000000">;</font><br />
<a name="117"><font color="#808080">117</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>try&nbsp;</b></font><font color="#000000">{</font><br />
<a name="118"><font color="#808080">118</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Object&nbsp;home&nbsp;=&nbsp;ctx.lookup</font><font color="#000000">(</font><font color="#000000">JNDI_NAME</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="119"><font color="#808080">119</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>return&nbsp;</b></font><font color="#000000">(</font><font color="#000000">TraderHome</font><font color="#000000">)&nbsp;</font><font color="#000000">narrow</font><font color="#000000">(</font><font color="#000000">home,&nbsp;TraderHome.</font><font color="#7f0055"><b>class</b></font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="120"><font color="#808080">120</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#7f0055"><b>catch&nbsp;</b></font><font color="#000000">(</font><font color="#000000">NamingException&nbsp;ne</font><font color="#000000">)&nbsp;{</font><br />
<a name="121"><font color="#808080">121</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;The&nbsp;client&nbsp;was&nbsp;unable&nbsp;to&nbsp;lookup&nbsp;the&nbsp;EJBHome.&nbsp;&nbsp;Please&nbsp;make&nbsp;sure&nbsp;&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="122"><font color="#808080">122</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;that&nbsp;you&nbsp;have&nbsp;deployed&nbsp;the&nbsp;ejb&nbsp;with&nbsp;the&nbsp;JNDI&nbsp;name&nbsp;&#34;</font><font color="#000000">+</font><br />
<a name="123"><font color="#808080">123</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">JNDI_NAME+</font><font color="#2a00ff">&#34;&nbsp;on&nbsp;the&nbsp;WebLogic&nbsp;server&nbsp;at&nbsp;&#34;</font><font color="#000000">+url</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="124"><font color="#808080">124</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>throw&nbsp;</b></font><font color="#000000">ne;</font><br />
<a name="125"><font color="#808080">125</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="126"><font color="#808080">126</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="127"><font color="#808080">127</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="128"><font color="#808080">128</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#3f5fbf">/**</font><br />
<a name="129"><font color="#808080">129</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;Using&nbsp;a&nbsp;Properties&nbsp;object&nbsp;will&nbsp;work&nbsp;on&nbsp;JDK&nbsp;1.1.x&nbsp;and&nbsp;Java2</font><br />
<a name="130"><font color="#808080">130</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*&nbsp;clients</font><br />
<a name="131"><font color="#808080">131</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;</font><font color="#3f5fbf">*/</font><br />
<a name="132"><font color="#808080">132</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;</b></font><font color="#000000">Context&nbsp;getInitialContext</font><font color="#000000">()&nbsp;</font><font color="#7f0055"><b>throws&nbsp;</b></font><font color="#000000">NamingException&nbsp;</font><font color="#000000">{</font><br />
<a name="133"><font color="#808080">133</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><br />
<a name="134"><font color="#808080">134</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>try&nbsp;</b></font><font color="#000000">{</font><br />
<a name="135"><font color="#808080">135</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#3f7f5f">//&nbsp;Get&nbsp;an&nbsp;InitialContext</font><br />
<a name="136"><font color="#808080">136</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">Hashtable&lt;String,String&gt;&nbsp;h&nbsp;=&nbsp;</font><font color="#7f0055"><b>new&nbsp;</b></font><font color="#000000">Hashtable&lt;String,String&gt;</font><font color="#000000">()</font><font color="#000000">;</font><br />
<a name="137"><font color="#808080">137</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">h.put</font><font color="#000000">(</font><font color="#000000">Context.INITIAL_CONTEXT_FACTORY,</font><br />
<a name="138"><font color="#808080">138</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#2a00ff">&#34;weblogic.jndi.WLInitialContextFactory&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="139"><font color="#808080">139</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">h.put</font><font color="#000000">(</font><font color="#000000">Context.PROVIDER_URL,&nbsp;url</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="140"><font color="#808080">140</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>return&nbsp;new&nbsp;</b></font><font color="#000000">InitialContext</font><font color="#000000">(</font><font color="#000000">h</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="141"><font color="#808080">141</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}&nbsp;</font><font color="#7f0055"><b>catch&nbsp;</b></font><font color="#000000">(</font><font color="#000000">NamingException&nbsp;ne</font><font color="#000000">)&nbsp;{</font><br />
<a name="142"><font color="#808080">142</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;We&nbsp;were&nbsp;unable&nbsp;to&nbsp;get&nbsp;a&nbsp;connection&nbsp;to&nbsp;the&nbsp;WebLogic&nbsp;server&nbsp;at&nbsp;&#34;</font><font color="#000000">+url</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="143"><font color="#808080">143</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">log</font><font color="#000000">(</font><font color="#2a00ff">&#34;Please&nbsp;make&nbsp;sure&nbsp;that&nbsp;the&nbsp;server&nbsp;is&nbsp;running.&#34;</font><font color="#000000">)</font><font color="#000000">;</font><br />
<a name="144"><font color="#808080">144</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#7f0055"><b>throw&nbsp;</b></font><font color="#000000">ne;</font><br />
<a name="145"><font color="#808080">145</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="146"><font color="#808080">146</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#000000">}</font><br />
<a name="147"><font color="#808080">147</font>&nbsp;</a><font color="#ffffff"></font><br />
<a name="148"><font color="#808080">148</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><font color="#7f0055"><b>private&nbsp;static&nbsp;</b></font><font color="#7f0055"><b>void&nbsp;</b></font><font color="#000000">log</font><font color="#000000">(</font><font color="#000000">String&nbsp;s</font><font color="#000000">)&nbsp;{&nbsp;</font><font color="#000000">System.out.println</font><font color="#000000">(</font><font color="#000000">s</font><font color="#000000">)</font><font color="#000000">;&nbsp;</font><font color="#000000">}</font><br />
<a name="149"><font color="#808080">149</font>&nbsp;</a><font color="#ffffff">&nbsp;&nbsp;</font><br />
<a name="150"><font color="#808080">150</font>&nbsp;</a><font color="#000000">}</font></code>
    
   </td>
  <!-- end source code -->
   </tr>
</table>
</div>
<!-- =       END of automatically generated HTML code       = -->
<!-- ======================================================== -->


</body></html>
